#include <stdlib.h>
#include "ListaEspecialidad.h"
#include "Especialidad.h"

ListaEspecialidad nueva_ListaEspecialidad() {
    ListaEspecialidad lista;
    lista.ini = NULL;
    lista.fin = NULL;
    lista.cant = 0;
    return lista;
}

ListaEspecialidad* crear_ListaEspecialidad() {
    ListaEspecialidad* lista = malloc(sizeof(ListaEspecialidad));
    lista->ini = NULL;
    lista->fin = NULL;
    lista->cant = 0;
    return lista;
}

void insertarFinal_ListaEspecialidad(ListaEspecialidad* list, Especialidad* esp) {
    NodoListaEspecialidad *nuevo = malloc(sizeof (NodoListaEspecialidad));
    nuevo->sig = NULL;
    nuevo->especialidad = esp;
    nuevo->ant = list->fin;

    if (list->cant == 0) {
        list->ini = nuevo;
    } else {
        list->fin->sig = nuevo;
    }
    list->fin = nuevo;
    list->cant += 1;
}

void imprimir_ListaEspecialidad(ListaEspecialidad le){
    NodoListaEspecialidad* i;
    for (i= le.ini; i!=NULL; i = i->sig){
        imprimir_Especialidad(i->especialidad);
    }
}

void imprime_ListaEspecialidad(ListaEspecialidad* le){
    NodoListaEspecialidad* i;
    for (i= le->ini; i!=NULL; i = i->sig){
        imprimir_Especialidad(i->especialidad);
    }
}


